// pages/record/record.js
//将秒数转换为时分秒的表示形式
var formatSeconds=function(value){
  var time=parseFloat(value);
  var h=Math.floor(time/3600);
  var m=Math.floor((time-h*3600)/60);
  var s=time-h*3600-m*60;
  return [h,m,s].map(formatNumber).join(':');

  function formatNumber(n){
    n=n.toString()
    return n[1]?n:'0'+n
  }
}
var interval; //定时器
Page({

  /**
   * 页面的初始数据
   */
  data: {
    formatRecordTime:'00:00:00',//时长初始化
    recordTime:0,//计数器，每秒加1
    recordFile:'',//录音临时文件
  },
  //开始录音按钮事件处理函数
  startTap:function(){
    var self=this;
    //设置计时器，每秒执行一次
    interval=setInterval(function(){
      self.data.recordTime+=1;//计数器增加1
      self.setData({
        formatRecordTime:formatSeconds(self.data.recordTime)//格式化时间显示
      })
    },1000);
    //开始录音
    wx.startRecord({
      success:function(res){
        console.log(res);
        self.setData({
          formatRecordTime:formatSeconds(self.data.recordTime),//更新显示的时长
          recordFile:res.tempFilePath//更新音频临时文件路径
        })
      },
      //完成清除定时器
      complete:function(){
        clearInterval(interval)//清除定时器
      }
    })
  },
  //结束录音
  endTap:function(){
    wx.stopRecord();//停止录音
    clearInterval(interval);//清除定时器
    this.setData({
      formatRecordTime:'00:00:00',//显示时长设置为初始值
      recordTime:0//计数器清0
    })
  },
  //播放录音
  playTap:function(){
    var self=this;
    wx.playVoice({
      filePath: 'self.data.recordFile',//设置播放文件路径
      complete:function(){}
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})